﻿module Sustainalytics.Screening {
    import Common = Sustainalytics.Common;

    export interface IFilterService {
        
        getAccountFilters(accountId: string): ng.IPromise<FilterDto[]>;
        getUserFilters(targetType: TargetType): ng.IPromise<FilterDto[]>;
        getFullFilterById(filterId: string, accountId: string, userId: string): ng.IPromise<FilterDto>;
        saveFilter(filter: FilterDto): ng.IPromise<FilterDto>;
        editFilter(filter: FilterDto): ng.IPromise<FilterDto>;
        deleteFullFilter(filterId: string): ng.IPromise<{}>;
        updateSelectedCriteriaOrderNumber(filterId: string, criteriaIds: Array<string>): ng.IPromise<{}>;
        saveUserCustomFilterOrder(targetType: TargetType, screenRegion: ScreenRegion, filterIds: Array<string>): ng.IPromise<{}>;
    }
}